package org.example.springtest.annotation;

import org.springframework.core.annotation.AliasFor;

import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;

/**
 * <pre>
 * [@Two]
 * └── X
 *     ▲
 *     │
 * [@One]
 * ├── A ─ @AliasFor("Two", "X")
 * │
 * └── B ─ @AliasFor("Two", "X")
 * </pre>
 *
 * @author yutianhong
 * @version 1.0
 * @since 2025/4/3 14:41
 */
@Retention(RetentionPolicy.RUNTIME)
@TestImplicitAliasesMetaL1
public @interface TestImplicitAliases {

    @AliasFor(annotation = TestImplicitAliasesMetaL1.class, attribute = "x")
    String a() default "default";

    @AliasFor(annotation = TestImplicitAliasesMetaL1.class, attribute = "x")
    String b() default "default";
}
